package com.exonline.commons.utils;
/**
 * @desc   用户名密码校验工具类
 * @author hbrj
 */

import javax.servlet.http.HttpServletRequest;

public class LogincheckUtils {

    /**
     * @desc  1.网站前台的用户名和密码的登录校验
     * @param name
     * @param password
     * @return
     */
    public static boolean checkLogin(String name, String password) {
        //1.密码校验的正则表达式：一个大写字母,一个小写字母,一个数字,最少6位
        String passwordRegex = "^\\S*(?=\\S{6,})(?=\\S*\\d)(?=\\S*[A-Z])(?=\\S*[a-z])\\S*$";
        //2.名字校验的正则表达式：允许数字,字母,下划线,减号
        String nameRegex = "^[a-zA-Z0-9_-]{4,16}$";
        if (name.matches(nameRegex)&&password.matches(passwordRegex)) {
            return true;
        }else {
            return false;
        }
    }

    /**
     * @desc  2.后台管理系统的用户名和密码的登录校验
     * @param name
     * @param password
     * @return
     */
    public static boolean checkAdminLogin(String name, String password) {
        //一个大写字母,一个小写字母,一个数字,最少6位
        String passwordRegex = "^\\S*(?=\\S{6,})(?=\\S*\\d)(?=\\S*[A-Z])(?=\\S*[a-z])\\S*$";
        //姓名
        String nameRegex = "^(?:[\\u4e00-\\u9fa5·]{2,16})$";
        if (name.matches(nameRegex)&&password.matches(passwordRegex)) {
            return true;
        }else {
            return false;
        }
    }

    public static void main(String[] args) {
        boolean b = checkLogin("Aizacks", "Bai200506306");
        System.out.println(b);
    }
}
